單一繼承(Single Inheritance):C# 的類別只支援繼承自單一直接基底類別(不可同時繼承多個 Class,但可實作多個 Interface)。
存取修飾詞(Access Modifiers)與繼承:
- public:任何地方皆可存取。
- protected:僅「類別本體」以及「其衍生子類別」內部可以存取,外部無法直接使用。
- internal:同一個組件(Assembly / 專案)內可存取。
- private:僅「該類別本身」可存取,子類別繼承但無權直接存取。
呼叫基底類成員(base 關鍵字):
- 建構子轉發:子類別建構子透過 : base(...) 呼叫父類別建構子,確保父類別先完成初始化。
- 成員存取:在子類別中使用 base.MethodName() 或 base.PropertyName 存取已被遮蔽或覆寫的父類別成員。
隱藏基底成員(Member Hiding / Shadowing):
- 當子類別定義了與父類別「同名且簽章相同」的成員時,子類別成員會直接遮蔽父類別成員。
- 應加上 new 關鍵字向編譯器明確宣告隱藏意圖(若不加仍可編譯,但會產生警告)。
- 呼叫行為由變數型別決定:用父類別變數型別指向子類物件時,呼叫的是父類別版本;用子類別型別時,呼叫的是子類別版本(與 virtual/override 的動態多型不同)。
實作範例

